/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.ept.controller;

import com.ept.controller.util.JsfUtil;
import com.ept.entities.Panier;
import com.ept.entities.Utilisateur;
import com.ept.entities.UtilisateurPK;
import com.ept.facade.PanierFacade;
import com.ept.facade.UtilisateurFacade;
import java.io.Serializable;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;


/**
 *
 * @author Khalil
 */
@ManagedBean(name = "subscribeController")
@RequestScoped
public class SubscribeController implements Serializable{

    private Utilisateur utilisateur;
    private UtilisateurPK utilisateurPK;
    private Panier  panier;
    
    @EJB
    private UtilisateurFacade utilisateurFacade;
    @EJB
    private PanierFacade panierFacade;
    /**
     * Creates a new instance of SubscribeController
     */
    public SubscribeController() {
        utilisateur = new Utilisateur();
        utilisateurPK = new UtilisateurPK();
        panier= new Panier();
       
    }

    @PostConstruct
    private void init(){
         List<Panier> list = panierFacade.findAll();
        System.out.println(list.size());
    }
    public Utilisateur getUtilisateur() {
        return utilisateur;
    }

    public void setUtilisateur(Utilisateur utilisateur) {
        this.utilisateur = utilisateur;
    }

    public UtilisateurPK getUtilisateurPK() {
        return utilisateurPK;
    }

    public void setUtilisateurPK(UtilisateurPK utilisateurPK) {
        this.utilisateurPK = utilisateurPK;
    }
    
    public void save(){
        System.out.println("oo");
        try {
            utilisateur.setUtilisateurPK(utilisateurPK);           
            utilisateurFacade.create(utilisateur);
            panier = new Panier();
            panierFacade.create(panier);
            utilisateur.setPanier(panier);
            utilisateurFacade.edit(utilisateur);
            JsfUtil.addSuccessMessage("Bravo");
        } catch (Exception e) {
            JsfUtil.addErrorMessage("Utilisateur déja existant ;)");
        }
    }

    public void setUtilisateurFacade(UtilisateurFacade utilisateurFacade) {
        this.utilisateurFacade = utilisateurFacade;
    }

    public void setPanierFacade(PanierFacade panierFacade) {
        this.panierFacade = panierFacade;
    }
    
}
